package com.caifu.service;

import com.caifu.bean.Result;
import com.caifu.excel.ExcelStaffinfo;
import com.caifu.pojo.SysUser;
import com.caifu.pojo.YlBasicData;
import com.caifu.pojo.YlStaffInfo;
import com.caifu.vo.YlStaffInfoVo;
import com.github.pagehelper.PageInfo;
import net.sf.json.JSONObject;

import java.util.List;
import java.util.Map;

/**
 * ClassName: YlStaffInfoService.java
 *
 * @author: tianwenwen
 * createTime: 2020年11月09日 09:59:27
 **/
public interface YlStaffInfoService {
    /**
     * description: 获取员工列表
     * param ylStaffInfoVo
     * return: com.github.pagehelper.PageInfo<com.caifu.pojo.YlStaffInfo>
     * author: Tian
     * time: 2020/11/9 10:18
     */
    PageInfo<YlStaffInfoVo> getStaffInfoList(YlStaffInfoVo ylStaffInfoVo) throws Exception;

    /**
     * description: 添加员工
     * param ylStaffInfo
     * return: com.caifu.bean.Result
     * author: Tian
     * time: 2020/11/9 15:41
     */
    Result addStaffInfo(YlStaffInfo ylStaffInfo, SysUser user) throws Exception;

    /**
     * description: 根据id查询员工信息
     * param staffNo
     * return: com.caifu.bean.Result
     * author: Tian
     * time: 2020/11/9 17:52
     */
    YlStaffInfo getStaffInfoById(String staffNo) throws Exception;

    /**
     * description: 根据id删除员工信息
     * param staffNo
     * return: void
     * author: Tian
     * time: 2020/11/9 18:19
     */
    Map<String,Object> deleteById(String staffNo);

    /**
     * description: 获取导出数据list
     * param
     * return: java.util.List<com.caifu.excel.ExcelStaffinfo>
     * author: Tian
     * time: 2020/11/10 10:28
     */
    List<ExcelStaffinfo> getExportExcelData(YlStaffInfoVo ylStaffInfoVo) throws Exception;
    /**
    * 
    * 功能描述：加密导入的员工数据
    * 
    * @Param
    * @Return      
    * @Exception   
    * @Author  GZ
    * @Date   2020/12/16 11:39
    */
    void  changeStaffInfo() throws Exception;
}
